package com.sk.weichat.mvp.contract;

import com.sk.weichat.bean.Friend;
import com.sk.weichat.bean.PublicMenu;
import com.sk.weichat.bean.message.ChatMessage;

import java.util.List;

public interface ChatContract {

    interface ChatView {

        void updateContent(boolean b);

        void updateContent(int position);

        void updateOnLineDescribe(String describe);

        /**
         * 把离线改为在线
         */
        void changeOnLineState(boolean state);

        /**
         * 修改备注名称
         * @param mFriend
         */
        void changeChannelName(Friend mFriend);

        void showToastMsg(String msg);

        void finishActivity();

        void moreSelected(boolean isShow, int position);

        void changeBackdrop(Object obj);

        void onSendMessageReplay();

        /**
         * 红包弹框
         * @param message
         */
        void showRedDialog(ChatMessage message);
        void closeRedDialog();

        /**
         * 戳一戳
         * @param type
         */
        void onShake(int type);

        /**
         * 公众号菜单
         * @param publicMenusList
         */
        void fillRoomMenu(List<PublicMenu> publicMenusList);

        void onHeaderRefreshingCompleted(boolean hasMoreDate);

        //只允许我关注的人发消息
        void onlyAllowAttentionSendMsg(boolean hasMoreDate);

    }

    interface Presenter {

    }

    interface BottomPresenter {

    }
}
